home *** CD-ROM | disk | FTP | other *** search
/ Belgian Amiga Club - ADF Collection / BS1 part 34.zip / BS1 part 34 / Aztec C 5.0a disk 1.adf / include / libraries / configregs.h next >
C/C++ Source or Header  |  1989-11-09  |  3KB  |  102 lines

  1. #ifndef    LIBRARIES_CONFIGREGS_H
  2. #define    LIBRARIES_CONFIGREGS_H
  3. #ifndef    EXEC_TYPES_H
  4. #include    "exec/types.h"
  5. #endif    /* !EXEC_TYPES_H */
  6. struct    ExpansionRom    {
  7. UBYTE    er_Type;
  8. UBYTE    er_Product;
  9. UBYTE    er_Flags;
  10. UBYTE    er_Reserved03;
  11. UWORD    er_Manufacturer;
  12. ULONG    er_SerialNumber;
  13. UWORD    er_InitDiagVec;
  14. UBYTE    er_Reserved0c;
  15. UBYTE    er_Reserved0d;
  16. UBYTE    er_Reserved0e;
  17. UBYTE    er_Reserved0f;
  18. };
  19. struct    ExpansionControl    {
  20. UBYTE    ec_Interrupt;
  21. UBYTE    ec_Reserved11;
  22. UBYTE    ec_BaseAddress;
  23. UBYTE    ec_Shutup;
  24. UBYTE    ec_Reserved14;
  25. UBYTE    ec_Reserved15;
  26. UBYTE    ec_Reserved16;
  27. UBYTE    ec_Reserved17;
  28. UBYTE    ec_Reserved18;
  29. UBYTE    ec_Reserved19;
  30. UBYTE    ec_Reserved1a;
  31. UBYTE    ec_Reserved1b;
  32. UBYTE    ec_Reserved1c;
  33. UBYTE    ec_Reserved1d;
  34. UBYTE    ec_Reserved1e;
  35. UBYTE    ec_Reserved1f;
  36. };
  37. #define    E_SLOTSIZE    0x10000
  38. #define    E_SLOTMASK    0xffff
  39. #define    E_SLOTSHIFT    16
  40. #define    E_EXPANSIONBASE    0xe80000
  41. #define    E_EXPANSIONSIZE    0x080000
  42. #define    E_EXPANSIONSLOTS    8
  43. #define    E_MEMORYBASE    0x200000
  44. #define    E_MEMORYSIZE    0x800000
  45. #define    E_MEMORYSLOTS    128
  46. #define    ERT_TYPEMASK    0xc0
  47. #define    ERT_TYPEBIT    6
  48. #define    ERT_TYPESIZE    2
  49. #define    ERT_NEWBOARD    0xc0
  50. #define    ERT_MEMMASK    0x07
  51. #define    ERT_MEMBIT    0
  52. #define    ERT_MEMSIZE    3
  53. #define    ERTB_CHAINEDCONFIG    3
  54. #define    ERTB_DIAGVALID    4
  55. #define    ERTB_MEMLIST    5
  56. #define    ERTF_CHAINEDCONFIG    (1<<3)
  57. #define    ERTF_DIAGVALID    (1<<4)
  58. #define    ERTF_MEMLIST    (1<<5)
  59. #define    ERFB_MEMSPACE    7
  60. #define    ERFB_NOSHUTUP    6
  61. #define    ERFF_MEMSPACE    (1<<7)
  62. #define    ERFF_NOSHUTUP    (1<<6)
  63. #define    ERT_MEMNEEDED(t)    \
  64. (((t)&ERT_MEMMASK)?    0x10000    <<    (((t)&ERT_MEMMASK)    -1)    :    0x800000    )
  65. #define    ERT_SLOTSNEEDED(t)    \
  66. (((t)&ERT_MEMMASK)?    1    <<    (((t)&ERT_MEMMASK)-1)    :    0x80    )
  67. #define    ECIB_INTENA    1
  68. #define    ECIB_RESET    3
  69. #define    ECIB_INT2PEND    4
  70. #define    ECIB_INT6PEND    5
  71. #define    ECIB_INT7PEND    6
  72. #define    ECIB_INTERRUPTING    7
  73. #define    ECIF_INTENA    (1<<1)
  74. #define    ECIF_RESET    (1<<3)
  75. #define    ECIF_INT2PEND    (1<<4)
  76. #define    ECIF_INT6PEND    (1<<5)
  77. #define    ECIF_INT7PEND    (1<<6)
  78. #define    ECIF_INTERRUPTING    (1<<7)
  79. #define    EC_MEMADDR(slot)    ((slot)    <<    (E_SLOTSHIFT)    )
  80. #define    EROFFSET(er)    ((int)&((struct    ExpansionRom    *)0)->er)
  81. #define    ECOFFSET(ec)    \
  82. (sizeof(struct    ExpansionRom)+((int)&((struct    ExpansionControl    *)0)->ec))
  83. struct    DiagArea    {
  84. UBYTE    da_Config;
  85. UBYTE    da_Flags;
  86. UWORD    da_Size;
  87. UWORD    da_DiagPoint;
  88. UWORD    da_BootPoint;
  89. UWORD    da_Name;
  90. UWORD    da_Reserved01;
  91. UWORD    da_Reserved02;
  92. };
  93. #define    DAC_BUSWIDTH    0xC0
  94. #define    DAC_NIBBLEWIDE    0x00
  95. #define    DAC_BYTEWIDE    0x40
  96. #define    DAC_WORDWIDE    0x80
  97. #define    DAC_BOOTTIME    0x30
  98. #define    DAC_NEVER    0x00
  99. #define    DAC_CONFIGTIME    0x10
  100. #define    DAC_BINDTIME    0x20
  101. #endif
  102.